
/*订单提交验证*/
(function(){
	$(".submitBtn").click(function(){
		if(!checkInfo()){return false;};
		if(!checkPay()){return false;};
		formSubmit();
		return false;
	});
	function formSubmit(){
		if(!document.forms['group'].submited){
			document.forms['group'].submit();
			// popWindow.open("<div class='loadsubmit'><h3>订单提交中，请稍等</h3><div class='loading'></div></div>");
		}
		if(!document.forms['group'].submited){
			document.forms['group'].submited=false;
		}
	}
	//检查订票人信息
	function checkInfo(){
	
		if (!validateIdCard($(".idCard").val())){  
			alert("身份证号格式不正确！");  
			$(".idCard").focus();  
			return false;  
		}
	
		var paymodel=0;
		var radioCount=0;
		$("input.paymodel[type='radio']").each(function(){
			radioCount++;
			if(this.checked==true)
				paymodel=this.value;
		});
		if(paymodel==0&&radioCount){
			alert("请选择支付方式");
			return false;
		}
		var error=0;
		$(".roomer").each(function(){
			if($(this).val()==""||(/^入住人\d{1,2}$/).test($(this).val())){
				alert("请填写入住人姓名");
				$(this).focus();
				error=1;
				return false;
			}
		});
		if(error==1){return false;}
		if($("#arriveTime").size()>0&&!$("#arriveTime").val()){
			alert("请选择最晚到店时间");
			return false;
		}
		$(".tourist_name").each(function(){
			if($(this).val()==""){
				alert("旅客姓名不能为空");
				$(this).focus();
				error=1;
				return false;
			}
		});
		if(error==1){return false;}
		var idCards=[];
		if(error==1){
			return false;
		}
		return true;
	}
})();
function validateIdCard(idCard){

	var regIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;

 //如果通过该验证，说明身份证格式正确，但准确性还需计算
	if(regIdCard.test(idCard)){
		if(idCard.length==18){
			var idCardWi=new Array( 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ); //将前17位加权因子保存在数组里
			var idCardY=new Array( 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ); //这是除以11后，可能产生的11位余数、验证码，也保存成数组
			var idCardWiSum=0; //用来保存前17位各自乖以加权因子后的总和
			for(var i=0;i<17;i++){
				idCardWiSum+=idCard.substring(i,i+1)*idCardWi[i];
			}
			var idCardMod=idCardWiSum%11;//计算出校验码所在数组的位置
			var idCardLast=idCard.substring(17);//得到最后一位身份证号码
				//如果等于2，则说明校验码是10，身份证号码最后一位应该是X
			if(idCardMod==2){
				return (idCardLast=="X"||idCardLast=="x") ? true:false;
			}else{
				//用计算出的验证码与最后一位身份证号码匹配，如果一致，说明通过，否则是无效的身份证号码
				return (idCardLast==idCardY[idCardMod]) ? true:false;
			}
		}
 	}
	return false;
}
